package cn.edu.tju.elm.repository;

import cn.edu.tju.elm.model.OrderDetailet;
import cn.edu.tju.elm.model.Order;
import cn.edu.tju.elm.model.Food;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 订单项数据访问接口
 */
@Repository
public interface OrderDetailetRepository extends JpaRepository<OrderDetailet, Long> {
    
    /**
     * 查询指定订单的所有订单项
     * @param orderId 订单ID
     * @return 订单项列表
     */
    List<OrderDetailet> findByOrderId(Long orderId);
    
    /**
     * 根据订单查询订单项
     * @param order 订单对象
     * @return 订单项列表
     */
    List<OrderDetailet> findByOrder(Order order);

    /**
     * 查询包含指定食品的订单项
     * @param food 食品对象
     * @return 订单项列表
     */
    List<OrderDetailet> findByFood(Food food);

    /**
     * 删除指定订单的所有订单项
     * @param order 订单对象
     */
    void deleteByOrder(Order order);
}